const baseURL = ''; // 图片代理地址

const ip = 'https://ypyp.soft.haoyangsoft.com'

class Http {
	// 参数说明 url路由路径 data请求参数(默认为{}) method请求方法(默认为GET) toast 是否显示加载状态动画
	request(url, data = {}, method = "GET", toast = true) {
		return new Promise((reslove, reject) => {
			if(toast) {
				wx.showLoading({
					title: '加载中'
				})
			} 
			return wx.request({
				url: ip + url,
				method: method,
				data: {
					...data
				},
				dataType: 'json',
				header: {
					'Authorization': wx.getStorageSync('token')
				},
				success(res) {
					if(toast) {
						wx.hideLoading()
					}
					const { code, msg } = res.data
					if (code == 200 || code == 505) {
						reslove(res.data)
					} else if (code == 403) {
						wx.removeStorageSync('token')
						wx.removeStorageSync('id')
						wx.showToast({
							title: msg,
							icon: "none",
						})
						setTimeout(() => {
							wx.navigateTo({
								url: '/pages/login/index'
							})
						}, 1500);
					} else {
						wx.showToast({
							title: msg,
							icon: "none",
							duration: 1500
						})
						// reslove(res.data)
					}
				},
				fail(error) {
					if(toast) {
						wx.hideLoading()
					}
					wx.showToast({
						title: '抱歉,网络错误',
						icon: "none"
					})
					reject(error);
				},
				complete() {

				}
			})
		})
	}
}

module.exports = {
	Http,
	baseURL,
	ip
}

